﻿' ----------------------------------------------------------------------------------
' Microsoft Developer & Platform Evangelism
' 
' Copyright (c) Microsoft Corporation. All rights reserved.
' 
' THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, 
' EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES 
' OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
' ----------------------------------------------------------------------------------
' The example companies, organizations, products, domain names,
' e-mail addresses, logos, people, places, and events depicted
' herein are fictitious.  No association with any real company,
' organization, product, domain name, email address, logo, person,
' places, or events is intended or should be inferred.
' ----------------------------------------------------------------------------------

Imports System.ServiceModel.Web
Imports System.ServiceModel.Description

Namespace Infrastructure

    Public Class AutomaticFormatWebServiceHost
        Inherits WebServiceHost
        Public Sub New(ByVal serviceType As Type, ByVal ParamArray baseAddresses() As Uri)
            MyBase.New(serviceType, baseAddresses)
        End Sub

        Protected Overrides Sub OnOpening()
            MyBase.OnOpening()

            For Each ep In Me.Description.Endpoints
                Dim endpoint = ep.Behaviors.Find(Of WebHttpBehavior)()
                If endpoint IsNot Nothing Then
                    endpoint.AutomaticFormatSelectionEnabled = True
                End If
            Next ep
        End Sub
    End Class
End Namespace